package net.csdn.business.common.domain.request;

import com.alibaba.fastjson2.JSONObject;
import lombok.Data;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @author likun
 * @date 2022/6/27 16:30
 */
@Data
public class ProjectInvitationReqDto implements Serializable {
    /**
     * 被邀请人
     */
    @NotBlank(message = "uid 不能为空")
    private String uid;

    @Range(min = 1, max = 1, message = "targetType 不合法")
    private Integer targetType;

    @NotBlank(message = "targetId 不能为空")
    private String targetId;

    /**
     * 邀请发起人
     */
    @NotBlank(message = "inviterUid 不能为空")
    private String inviterUid;

    /**
     * 扩展参数
     * <code>
     * {
     * "accessLevel":20
     * }
     * </code>
     */
    @NotNull(message = "param 不能为空")
    private JSONObject param;
}